package net.linku.enums;

import lombok.AllArgsConstructor;
import lombok.Getter;
import net.linku.constant.ExceptionConstant;
import net.linku.exception.BizExpCode;

/**
 * 后台系统统一报错信息 1101
 * 01: server 02： web
 * 01:应用级错误(前端参数错误);
 * 02:交互异常(正常业务逻辑、非错误、需告知用户);
 * 03:依赖级错误(service内部调用其它接口出错);
 * 04:业务级错误(service自身处理出错、自身业务处理异常、NPE异常);  99:未知异常
 * 第9到13位：00001开始，自增
 *
 * @author: SilenceTian
 * @date: 2024/7/15 19:17
 * @version: 1.0
 */
@Getter
@AllArgsConstructor
public enum ErrorMessageEnums implements BizExpCode {

    // 1xx 参数校验错误
    //  权限信息不存在
    PRIVILEGE_INFO_NOT_EXISTS("1101010200001", ExceptionConstant.PRIVILEGE_INFO_NOT_EXISTS),
    // 角色信息不存在
    ROLE_INFO_NOT_EXISTS("1101010200002", ExceptionConstant.ROLE_INFO_NOT_EXISTS);
    /**
     * 异常编码
     */
    private final String errorCode;
    /**
     * 异常消息
     */
    private final String errorMsg;


    public String getFormattedMessage(Object... args) {
        return String.format(errorMsg, args);
    }
}
